home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Language/OS - Multiplatform Resource Library
/
LANGUAGE OS.iso
/
a_utils
/
yacc
/
flexyacc
/
aflex.lha
/
aflex
/
src
/
symS.a
< prev
next >
Wrap
Text File
|
1991-05-16
|
2KB
|
53 lines
-- Copyright (c) 1990 Regents of the University of California.
-- All rights reserved.
--
-- This software was developed by John Self of the Arcadia project
-- at the University of California, Irvine.
--
-- Redistribution and use in source and binary forms are permitted
-- provided that the above copyright notice and this paragraph are
-- duplicated in all such forms and that any documentation,
-- advertising materials, and other materials related to such
-- distribution and use acknowledge that the software was developed
-- by the University of California, Irvine. The name of the
-- University may not be used to endorse or promote products derived
-- from this software without specific prior written permission.
-- THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
-- IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
-- WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
-- TITLE symbol table routines
-- AUTHOR: John Self (UCI)
-- DESCRIPTION implements only a simple symbol table using open hashing
-- NOTES could be faster, but it isn't used much
-- $Header: /co/ua/self/arcadia/aflex/ada/src/RCS/symS.a,v 1.4 90/01/12 15:20:42 self Exp Locker: self $
with TSTRING;
with MISC_DEFS;
package SYM is
use TSTRING;
use MISC_DEFS;
procedure ADDSYM(SYM, STR_DEF : in VSTRING;
INT_DEF : in INTEGER;
TABLE : in out HASH_TABLE;
TABLE_SIZE : in INTEGER;
RESULT : out BOOLEAN);
-- result indicates success
procedure CCLINSTAL(CCLTXT : in VSTRING;
CCLNUM : in INTEGER);
function CCLLOOKUP(CCLTXT : in VSTRING) return INTEGER;
function FINDSYM(SYMBOL : in VSTRING;
TABLE : in HASH_TABLE;
TABLE_SIZE : in INTEGER) return HASH_LINK;
function HASHFUNCT(STR : in VSTRING;
HASH_SIZE : in INTEGER) return INTEGER;
procedure NDINSTAL(ND, DEF : in VSTRING);
function NDLOOKUP(ND : in VSTRING) return VSTRING;
procedure SCINSTAL(STR : in VSTRING;
XCLUFLG : in BOOLEAN);
function SCLOOKUP(STR : in VSTRING) return INTEGER;
end SYM;